Speech coding arrangement for communication networks

ABSTRACT

Disclosed is a method in a network element of a communication network, which communication network is capable of transparently transferring coded data at least in some part of the communication network. The method includes detecting a need to change codec rate to a second codec rate in a downlink connection from the communication network to an end user device; receiving coded data destined to said end user device, which data is coded with a first codec rate, and starting, in response to said detecting, rate transformation for transforming codec rate of said data destined to the end user device into said second codec rate. Also disclosed are an apparatus, a system and a computer program.

FIELD OF THE INVENTION

The present invention generally relates to a speech coding arrangementfor communication networks.

BACKGROUND OF THE INVENTION

Codecs (encoders/decoders) are used in wireless communication systems tocompress speech/voice signals in order to utilize efficiently theexpensive bandwidth resources both in the radio interface and in thetransmission networks. At the same time, transcoding of voice signalsmay significantly degrade signal quality and therefore unnecessarytranscoding should be avoided.

In a conventional call configuration between wireless user terminals thespeech signal is first encoded in the originating user terminal, sentover the radio interface, converted to PCM (Pulse Code Modulated) codedsignal (e.g. A-law or μ-law ITU-T Recommendation G.711) in a localtranscoder, carried over a fixed transmission network, transcoded againin a distant transcoder, sent over a distant radio interface and finallydecoded in the terminating user terminal. In this configuration, the twospeech codecs are in so called tandem operation, which may causedegradation in speech quality due to multiple transcodings.

This conventional configuration is illustrated in FIG. 1, which shows asystem comprising two interconnected networks, network A 101 and networkB 102. Both networks comprise a transcoding function 105 and 106.Further user terminals 103 and 104 are connected to the networks A and Brespectively. Messaging line 107 illustrates the conventionalencoding/decoding, which takes place in different parts of the system.

For avoiding the double coding and decoding of voice signals byintermediate network elements, methods called Tandem Free Operation(TFO) and Transcoder Free Operation (TrFO) have been introduced. Theprinciple in TFO and TrFO is to transmit compressed signal, which isencoded in a user terminal, as such in a fixed transmission network,whereby transcoding in the transmission network may be avoided. When theoriginating user terminal and terminating user terminal are using/canuse the same speech codec or codec mode, these techniques make itpossible to transparently transmit the speech frames received from theoriginating user terminal to the terminating user terminal withoutactivating the transcoding functions in the originating and terminatingnetworks. This is illustrated in FIG. 1 with messaging line 108. Thedetails of TFO and TrFO are slightly different, but the principle is thesame in both methods.

TFO and TrFO allow changing of codec mode used in the associated userterminals, if the situation in the radio interface of one or the otherend requires that. It however may take end-to-end round trip amount oftime before the change in the codec mode is effected. Thus there may beconsiderable delay, which may have an effect on signal/speech quality.For example fast degradation of radio interface may cause bad frames andthereby degradation in speech quality until codec mode will be changedto one that is suitable for the degraded radio interface. The delay ineffecting a codec mode change in connection with TrFO and TFO isillustrated in messaging diagrams of FIGS. 2 and 3 respectively.

In FIG. 2, UE_B (User Equipment) first transmits with codec mode X 2-1to UE_A. Then UE_A sends to RNC_A (Radio Network Controller) ameasurement report 2-2 indicating a situation in which there is a needto change codec mode in downlink radio connection of UE_A. (Thismeasurement report may have been requested by the RNC_A.) In phase 2-3,RNC_A performs rate control on the basis of the measurement report 2-2.RNC_A sends rate control information 2-4 to RNC_B, which then performsmeasurement of uplink radio connection of UE_B in phase 2-5. In phase2-6 RNC_B performs rate control on the basis of the rate controlinformation 2-4 received from RNC_A and measurements performed in phase2-5. RNC_B sends the maximum rate found out as a result of rate control2-7 to UE_B. Then UE_B is able to send speech frames to UE_A with codecmode Y 2-8.

Arrow 200 illustrates the delay in effecting the codec mode change inthis arrangement. This delay may be for example 450 ms or even more inTrFO between 3G (3rd generation mobile phone) terminals.

In FIG. 3, MS_B (Mobile Station) initially sends speech frames with 12.2kbits/s AMR (Adaptive Multi Rate) to MS_A (not shown in figure). MS_Adetects need to lower the codec rate in downlink radio connection ofMS_A to 7.4 kbit/s and sends a downlink codec mode request (DL CMR) 3-1to a transcoder_A/MGW_A (Media Gateway). A TFO functionality in thetranscoder_A/MGW_A forwards the DL CMR 3-2 to a TFO functionality in atranscoder_B/MGW_B, which forwards the DL CMR 3-3 to a decoder in MS_B.The decoder in MS_B forwards the DL CMR 3-4 to an encoder in MS_B. Afterreceiving the DL CMR 3-4 the encoder in MS_B is able to change the codedmode used in sending speech frames to MS_A to 7.4 kbit/s AMR 3-5, whichis sent to an decoder in the transcoder_B/MGW_B, forwarded to an encoderin the transcoder_A/MGW_A 3-6 and to a decoder in MS_A 3-7.

Arrow 300 illustrates the delay in effecting the codec mode change inthis arrangement. This delay may be for example over 1 s or even more inTFO between GSM terminals.

Hence, there is a need to further develop speech coding arrangements incommunication networks.

SUMMARY

According to a first aspect of the invention there is provided a methodin a network element of a communication network, which communicationnetwork is capable of transparently transferring coded data at least insome part of the communication network, the method comprising:

detecting a need to change codec rate to a second codec rate in adownlink connection from the communication network to an end userdevice;

receiving coded data destined to said end user device, which data iscoded with a first codec rate, and

starting, in response to said detecting, rate transformation fortransforming codec rate of said data destined to the end user deviceinto said second codec rate.

It is possible that in the downlink there is a need to change the codecrate from the first codec rate to the second codec rate, butalternatively there may be a need to change the codec rate from someother codec rate to the second codec rate.

The rate transformation may be performed by means of coded domainconversion and/or transcoding and it may further comprise addingredundancy.

In an embodiment of the invention the coded domain conversion comprises

at least partially decoding said data encoded with said first codec ratefor obtaining at least partially decoded data, and

using said at least partially decoded data for performing the codeddomain conversion.

The detecting a need to change codec rate may be based on for exampleone or more of the following: measurements, a command to change codecrate and a command to start rate transformation.

In an embodiment of the invention the method further comprisesconditionally deciding, whether to start said rate transformation in aparticular situation. The decision may be conducted on the basis of oneor more of the following: characteristics of available ratetransformation mechanisms, subjective/objective speech qualityimprovement obtainable by said rate transformation, said first codecrate and said second codec rate. With regard to using the first and thesecond codec rate one may use in practice for example combination of thefirst and second codec rate or the relationship between them.

In another embodiment of the invention the method further comprisesconditionally deciding, which rate transformation mechanism to use in aparticular situation. The decision may be conducted on the basis of oneor more of the following: characteristics of available ratetransformation mechanisms, subjective/objective speech qualityimprovement obtainable by different rate transformation mechanisms, saidfirst codec rate and said second codec rate.

In an embodiment of the invention the method further comprises

receiving second coded data destined to said end user device, whichsecond coded data is coded with said second codec rate, and

stopping said rate transformation in response to receiving said secondcoded data.

In another embodiment of the invention the method further comprises

receiving a stop command, and

stopping said rate transformation in response to said stop command.

In an embodiment of the invention said transparent transferring of codeddata in the communication network is effected by means of tandem freeoperation and/or transcoder free operation mechanisms and said firstcodec rate has been agreed according to tandem free operation and/ortranscoder free operation mechanisms.

According to a second aspect of the invention there is provided anapparatus for use in a communication network, which communicationnetwork is capable of transparently transferring coded data at least insome part of the communication network, the apparatus comprising:

a receiver configured to receive coded data destined to said end userdevice, which data is coded with a first codec rate; and

a processing unit configured to detect a need to change codec rate to asecond codec rate in a downlink connection from the communicationnetwork to the end user device, and to start, in response to saiddetecting, rate transformation for transforming codec rate of said datadestined to the end user device into said second codec rate.

The apparatus may be for example one of the following or some othersuitable network element: a media gateway element, a radio networkcontroller, a base transceiver station, a base station controller, atranscoder (for example TCSM, transcoder submultiplexer), a networkcontroller (for example a UMA network controller), a WLAN access point,a VoIP gateway, or a digital subscriber line access multiplexer.

According to a third aspect of the invention there is provided acomputer program stored in a computer readable medium, the computerprogram comprising computer executable program code adapted to enable anapparatus to perform the method of the first aspect.

The computer executable program code of the third aspect may consist ofprogram code executable by any one of the following: a multipurposeprocessor; a microprocessor; an application specific integrated circuit;a digital signal processor; and a master control processor.

According to a fourth aspect of the invention there is provided anapparatus for a communication network, which communication network iscapable of transparently transferring coded data at least in some partof the communication network, the apparatus comprising:

means for detecting a need to change codec rate to a second codec ratein a downlink connection from the communication network to an end userdevice;

means for receiving coded data destined to said end user device, whichdata is coded with a first codec rate, and

means for starting, in response to said detecting, rate transformationfor transforming codec rate of said data destined to the end user deviceinto said second codec rate.

According to a fifth aspect of the invention there is provided acommunication network system comprising

network elements configured to transparently transfer coded data atleast in some part of the communication network, at least one of thenetwork elements comprising:

a receiver configured to receive coded data destined to an user device,which data is coded with a first codec rate; and

a processing unit configured to detect a need to change codec rate to asecond codec rate in a downlink connection from the communicationnetwork to the end user device, and to start, in response to saiddetecting, rate transformation for transforming codec rate of said datadestined to the end user device into said second codec rate.

Various embodiments of the present invention have been illustrated onlywith reference to certain aspects of the invention. It should beappreciated that corresponding embodiments may apply to other aspects aswell.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be described, by way of example only, with referenceto the accompanying drawings, in which:

FIG. 1 shows an example of a prior art system;

FIG. 2 shows a diagram illustrating messaging according to prior art;

FIG. 3 shows another diagram illustrating messaging according to priorart;

FIG. 4 shows an example of a system according to an embodiment of theinvention;

FIG. 5 shows a diagram illustrating messaging according to an embodimentof the invention;

FIG. 6 shows another diagram illustrating messaging according to anembodiment of the invention;

FIG. 7 shows yet another diagram illustrating messaging according to anembodiment of the invention;

FIG. 8 shows yet another diagram illustrating messaging according to anembodiment of the invention;

FIG. 9 shows yet another diagram illustrating messaging according to anembodiment of the invention;

FIG. 10A shows a decision table according to an embodiment of theinvention;

FIG. 10B shows a decision table according to another embodiment of theinvention;

FIG. 11 shows a block diagram of an apparatus suited for carrying outvarious embodiments of the invention.

DETAILED SPECIFICATION

In the following like reference numbers are used to refer to likeelements.

Some examples of embodiments of the invention are described below inconnection with TFO and/or TrFO implementations. Both TFO and TrFOgenerally provide transparent transmission of compressed speech throughtransmission networks. The main difference between TFO and TrFO is thatin TrFO transcoder units in network are bypassed, but TFO is fullyhandled and terminated in the transcoder units and therefore thetranscoder units cannot be bypassed in TFO. It should be appreciatedthat in addition to TFO and TrFO, the invention may as well be appliedto some other technology providing transparent transmission ofcompressed speech through transmission networks or some parts oftransmission networks. Furthermore the invention may be used in thecontext of an end-to-end TFO/TrFO type of connection or in a transcoderat the edge type of arrangement, wherein TFO/TrFO is applied only insome part of the end-to-end connection.

Embodiments of the invention may be used in the context of any suitablenetwork technology or combination of two or more network technologies.The network may have a radio interface or a fixed line interface for enduser devices. Such interface may be for example a 2G (second generationmobile network), 3G (third generation mobile network), Bluetooth, orWLAN interface and the interface may use packet data or circuit switcheddata. Additionally the network may employ VoIP protocol. For example thefollowing environments may be suitable for using the invention: 2G-2GTFO, 3G-3G TrFO, 2G-3G TFO/TrFO, 3G-UMA (Unlicenced Mobile Access)TFO/TrFO, 3G-VoIP TFO/TrFO, 3G-PSTN Transcoder at the edge and so forth.

The terms user terminal, wireless user terminal, mobile station (MS) anduser equipment (UE) are used interchangeably in this document. Theseterms are used to refer in general to an apparatus having communicationcapabilities.

The term rate transformation is used to refer to a procedure, which maybe accomplished for example by means of coded domain conversion ortranscoding. Various embodiments of the invention may apply coded domainconversion or transcoding or both of them. For defining a differencebetween coded domain conversion and transcoding one may consider a casewhere speech encoded with encoder A needs to be transcoded so thatdecoder B can decode it. Transcoding may be performed via signal levelby first decoding the signal (using “decoder A”) and then encoding it(using “encoder B”) and then decoding it with decoder B. In coded domainconversion the transcoding is carried out on coded domain i.e. based onthe coded parameters without going to the signal level in-between. Inthis way the encoded parameters (encoded with encoder A) may bemanipulated into parameters that can be decoded by decoder B.Additionally or alternatively the coded domain conversion may beperformed by partially or fully decoding the data encoded by the encoderA and using this partially or fully decoded data to perform the codeddomain parameter manipulation of codec parameters A to codec parametersB.

As an alternative to or in addition to the transcoding or coded domainconversion also adding redundancy may be employed in the ratetransformation procedure. An example relating to adding redundancy isfurther discussed below in connection with FIG. 9.

In some embodiments of the invention the rate transformation proceduremay comprise speech enhancement procedures as well. For example CDALC(Coded Domain Automatic Level Control), noise suppression, acoustic echocancelling etc. may be used. The enhancements may be carried out incoded domain or signal level.

FIG. 4 shows an example of a system according to an embodiment of theinvention comprising two interconnected networks, network A 101 andnetwork B 102. Both networks comprise a transcoding function 105 and106. It should be noted that in addition to different networks, thenetworks A and B may be subnetworks of the same network or simplydifferent parts of the same network. Further the system comprises userterminals 103 and 104, which are connected to the networks A and Brespectively. Messaging line 401 illustrates the encoding/decoding/ratetransformation, which takes place in different parts of the systemaccording to some embodiments of the invention.

FIG. 5 shows a diagram illustrating messaging according to an embodimentof the invention. Therein UE_B first transmits with codec mode X 2-1 toUE_A. Then UE_A sends to RNC_A (Radio Network Controller) a measurementreport 2-2 indicating a situation in which there is a need to changecodec mode in downlink radio connection of UE_A. (This measurementreport may have been requested by the RNC_A.) In phase 2-3, RNC_Aperforms rate control on the basis of the measurement report 2-2. RNC_Asends rate control information 2-4 to RNC_B, which then performsmeasurement of uplink radio connection of UE_B in phase 2-5.

MGW_A notices the rate control information 2-4 sent between RNC_A andRNC_B. UE_B continues to send speech frames with codec mode X 5-1(before codec mode change of TrFO reaches UE_B). MGW_A intercepts suchtransmission and starts rate transformation in phase 5-2. The ratetransformation in MGW_A may be performed for example by means of codeddomain conversion or transcoding. As a result of the rate transformation5-2, the speech frames are forwarded to UE_A with codec mode Y 5-3.

At the same time RNC_B continues with the normal codec mode change ofTrFO and performs in phase 2-6 rate control on the basis of the ratecontrol information 2-4 received from RNC_A and measurements performedin phase 2-5. RNC_B sends the maximum rate found out as a result of ratecontrol 2-7 to UE_B. Then UE_B is able to send speech frames to UE_Awith codec mode Y 2-8. When MGW_A notices that UE_B is sending withcodec mode Y, it terminates the rate transformation in phase 5-4.

Arrow 500 illustrates the delay in effecting the codec mode change inthe arrangement of FIG. 5. When compared to delay illustrated incorresponding prior art arrangement of FIG. 2 it can be noted that thedelay in this arrangement is shorter.

FIG. 6 shows another diagram illustrating messaging according to anembodiment of the invention. Until rate control 2-3 performed in RNC_Athe messaging in FIG. 6 is equal to the messaging in FIG. 5, but nowrate control information 6-1 is sent only to MGW_A and not all the wayto RNC_B. This may be accomplished for example such that MGW_A simplycaptures the rate control information received from RNC_A and does notsend it forward to RNC_B. In other words only rate transformation isinitiated and the change of codec mode according to TrFO is not. Thismay be beneficial for example in an environment, where data rate needsto be changed only for a relatively short period of time (due torelatively fast changes in radio interface quality for example) and notfor a longer period of time. Herein one should note that in suchenvironment, the achieved downlink codec mode in prior art arrangementsmay not always be totally suitable for the radio interface due to thelong delay in the codec mode change. The embodiment of FIG. 6 may alsobe beneficial for example in a situation where one wants to savetransmission/processing capacity on the B-side. After this, messaging inFIG. 6 continues in a similar manner as in FIG. 5: UE_B continues tosend speech frames with codec mode X 5-1, MGW_A intercepts suchtransmission and starts rate transformation in phase 5-2. Also here therate transformation in MGW_A may be performed for example by means ofcoded domain conversion or transcoding. As a result of the ratetransformation 5-2, the speech frames are forwarded to UE_A with codecmode Y 5-3.

Rate transformation in MGW_A may be continued for example until rateused by UE_B appears to match the rate suited for the radio interface ofUE_A. The reason for such situation to emerge may be for example thatUE_B changes the rate it uses for any reason or that the characteristicsof the radio interface of UE_A change such that the rate used by UE_B isagain suitable. Rate transformation in MGW_A may be terminated also dueto a command to do so. For example RNC_A may send such command, forexample on the basis of some measurements or time.

FIG. 7 shows yet another diagram illustrating messaging according to anembodiment of the invention. Therein MS_B (Mobile Station) initiallysends speech frames with 12.2 kbits/s AMR to MS_A (these messages arenot shown in figure). MS_A detects a need to lower the codec rate indownlink radio connection to 7.4 kbit/s and sends a downlink codec moderequest (DL CMR) 3-1 to a transcoder_A/MGW_A. In response to the DL CMR,a TFO functionality in the transcoder_A/MGW_A forwards a ratetransformation request 7-1 to a rate transforming functionality in thetranscoder_A/MGW_A. In addition to that the TFO functionality in thetranscoder_A/MGW_A may also forward the DL CMR to TFO functionality in atranscoder_B/MGW_B the same way as in FIG. 3 in order to have the ratechange according to TFO completed, but this option is not shown here.

In the example of FIG. 7, MS_B continues to send speech frames with 12.2kbits/s AMR 7-2. A decoder in a transcoder_B/MGW_B forwards the 12.2kbit/s AMR 7-3 to the rate transforming functionality in thetranscoder_A/MGW_A. The rate transforming functionality transforms rateof the 12.2 kbit/s AMR to 7.4 kbit/s AMR as requested and sends the 7.4kbit/s AMR signal to decoder in MS_A. The rate transformation in therate transforming functionality may be performed for example by means ofcoded domain conversion or transcoding. It should be noted that, if therate change of TFO were used in parallel with the shown method, the ratechange would eventually reach MS_B and after that the rate transformingfunctionality in the transcoder_A/MGW_A may terminate the ratetransformation.

Arrow 700 illustrates the delay in effecting the codec mode change inthe arrangement of FIG. 7. When compared to delay illustrated incorresponding prior art arrangement of FIG. 3 it can be noted that thedelay in this arrangement is shorter.

In some implementations it is possible that the MGW_A of FIG. 5 may notbe able to associate the rate control information 2-4 sent by RNC_A intothe same context with the speech frames 5-1 transmitted by UE_B. In suchsituation signaling from both RNC_A and RNC_B may be used for startingand stopping the rate transformation. FIG. 8 shows a diagramillustrating messaging according to such embodiment of the invention.Also here UE_B initially transmits with codec mode X 2-1 to UE_A. ThenUE_A sends to RNC_A a measurement report 2-2 indicating a situation inwhich there is a need to change codec mode in downlink radio connectionof UE_A. In phase 2-3, RNC_A performs rate control on the basis of themeasurement report 2-2 and sends rate control information 2-4 to RNC_B.

In connection with sending the rate control information 2-4, RNC_A alsosends a command to start rate transformation 8-1 to MSC_A (MobileSwitching Centre), which forwards the command 8-2 to MGW_A. Then, whenUE_B continues to send speech frames with codec mode X 5-1, MGW_A knowson the basis of the command 8-2 to intercept such transmission and startrate transformation in phase 8-3. As a result of the rate transformation8-3, the speech frames are forwarded to UE_A with codec mode Y 5-3.

Like in FIG. 5, RNC_B continues at the same time with the normal codecmode change of TrFO and performs measurement of uplink radio connectionof UE_B in phase 2-5 and rate control in phase 2-6. RNC_B sends themaximum rate found out as a result of rate control 2-7 to UE_B. ThenUE_B is able to send speech frames to UE_A with codec mode Y 2-8. Inconnection with sending the rate control information 2-7 to UE_B, RNC_Balso sends a command to stop rate transformation 8-4 to MSC_B, whichforwards the command 8-5 to MSC_A, from where the command 8-6 isforwarded to MGW_A. Then MGW_A knows on the basis of the command 8-6 toterminate the rate transformation in phase 8-7.

The signaling used for starting and stopping rate transformation in FIG.8 may employ for example RANAP (Radio Access Network Application Part),H.248 and/or BICC (Bearer Independent Call Control) messages. Forexample messages between RNCs and MSCs may be RANAP messages, messagesbetween MSCs and MGWs may be H.248 messages and messages between MSCsmay be BICC messages. It should however be appreciated that also someother type of signaling may be used in connection with embodiments ofthe invention.

FIG. 9 shows yet another diagram illustrating messaging according to anembodiment of the invention. The shown example relates to a UMAimplementation, wherein MS connects to a mobile network through astandard access point (for example 802.11 or Bluetooth) and UNC (UMANetwork Controller).

MS initially receives speech frames for example with 12.2 kbits/s AMR(these messages are not shown in figure). Then MS detects a need tolower the codec rate in downlink radio connection to 7.4 kbit/s andsends a downlink codec mode request (DL CMR) 9-1, 9-2 via a UNC elementto a transcoder/MGW of a mobile network. The TFO/TrFO functionality inthe transcoder/MGW may forward the DL CMR 9-3 to the other communicatingside in order to have rate change according to TFO/TrFO completed butthis is not mandatory.

MS sends also a request 9-4, 9-5 to have added redundancy via UNC to thetranscoder/MGW. The request may be an explicit request, which is sentwhen redundancy is needed, or MS may send redundancy configurationinformation comprising a preferred redundancy mode for each supportedcodec mode. In the later case the transcoder/MGW knows on the basis ofthe requested codec mode, which redundancy mode is preferred, wherebyseparate request for redundancy may be unnecessary.

In response to the DL CMR, a TFO/TrFO functionality in thetranscoder/MGW forwards a rate transformation request 9-6 to a ratetransforming functionality in the transcoder/MGW. The ratetransformation request comprises also request to add redundancy. Then asthe other communicating side continues to send speech frames with 12.2kbits/s AMR, the rate transforming functionality in the transcoder/MGWtransforms rate of the 12.2 kbit/s AMR to 7.4 kbit/s AMR as requestedand sends the 7.4 kbit/s AMR signal 9-7, 9-8 via UNC to a decoder in MS.The rate transformation in the rate transforming functionality may beperformed for example by means of coded domain conversion ortranscoding. Additionally the rate transformation functionality addsredundancy to the speech frames sent to MS for example by sending eachspeech frame twice.

In a similar way redundancy may be added also in some other embodimentsof the invention, for example in connection with VoIP configurations.Additionally in some embodiments, adding redundancy may be analternative to transcoding and coded domain conversion.

Some embodiments of the invention may be useful in a 3G-GSM TFO casewhere there is link adaptation applied on the GSM side. In such case theGSM side may be producing CMR's relatively frequently, for example on 40ms interval. The CMRs are transmitted to the 3G side as rate controlmessages. Now the RNC on the 3G side may filter out some of the ratecontrol messages, if there are too many such messages being sent,whereby no rate change according to TFO/TrFO is effected for each CMR.Sending frequent CMRs and rate control messages also takes up bandwidthand processing power and may therefore be undesirable. Also due to thelong round trip delay before rate change according to TFO/TrFO iseffected and in use in the downlink of the GSM side, the radioconditions of the GSM side may have already changed. Thus it may beuseful in this case to stop using rate changes according to TFO/TrFO andinstead to perform the transformation of some embodiment of theinvention on the GSM side. For example a transcoder in the GSM side maycapture the CMR's and not forward them to the 3G side. It could also bedecided that, if the frequency of the CMR's/rate control messages isabove or below some predefined threshold value (which may be for example1 CMR per 80 ms or 1 CMR per is) the rate transformation according tosome embodiment of the invention is started or stopped respectively.Otherwise the connection would be a normal TFO/TrFO connection.

It should be appreciated that in addition to or instead of MGW the ratetransformation of various embodiments of the invention may be carriedout in some other network element, for example in RNC or BTS.

With regard to rate transformation used in various embodiments of theinvention, it may be conditionally decided, whether to start (or stop)the rate transformation or not in a particular situation and whether touse coded domain conversion or transcoding. Such decision may be made inan MGW element and it may be considered for example in phases 5-2, 5-4,8-3 and 8-7 of FIGS. 5, 6 and 8. Another option is to let RNC make thedecision. RNC may make the decision based on number of differentmeasurements and/or any combination of the options discussed below. IfRNC makes the decision, it may send information about the decision tothe respective MGW for example by sending a suitable RANAP message to arespective MSC, which in turn forwards the message to the MGW by meansof a H.248 message. Such additional messaging may be necessary becausethe rate control information 2-4 of FIGS. 5, 6 and 8 may comprise solelythe codec mode selected by the rate control mechanism and not anyinformation for example on quality measurements. It should beappreciated that also some other type of messaging between the RNC andMGW may be used within the context of various embodiments of theinvention.

Whether to start rate transformation or not (be it by means of codeddomain conversion or transcoding) may be considered a compromise betweenpotential speech quality improvements achieved by reducing the number ofbad frames quickly versus possible degradation in speech quality causedby the coded domain conversion or transcoding.

Let's consider a situation in which speech frames are transmitted from aB-side (for example UE_B of FIG. 5, 6 or 8) to an A-side (for exampleUE_A of FIG. 5, 6 or 8). If the radio link quality on the A-side isincreasing instead of decreasing then it may be unnecessary to changethe codec mode in the A-side so quickly (as there will not be any badspeech frames caused by the changing radio link quality). In this casethe decision on whether to start rate transformation could be based onthe quality of the conversion or it may be decided that ratetransformation is never used in such situation.

Other aspects that may be taken into account when deciding, whether tostart the rate transformation may include the following:

-   -   If coded domain conversion between some codec modes is not of        good quality, conversion between those rates should not be used.    -   Only coded domain conversions that do not produce significantly        lower speech quality than the TrFO with the B-side codec should        be used. This may be codec mode dependent or dependent on the        quality of the coded domain conversion.

An additional transcoding step may have a relatively insignificanteffect on quality of signal when AMR modes 12.2 kbit/s and 10.2 kbit/sare used on the B-side. Thus if B-side is using AMR mode 12.2 kbit/s orAMR mode 10.2 kbit/s and A-side requests a lower mode, the ratetransformation may be conducted by means of transcoding to lower mode.The same may be true for some other codec modes as well, wherebytranscoding may be applied to them, too. On the other hand, if B-side isusing a lower AMR mode, an additional transcoding step may result indegraded signal.

One approach on whether to use transcoding is to assume that, if A-sideis requesting lower mode, taking the lower mode into use quickly willreduce bad frames and thus improve speech quality, even though theadditional transcoding step may have an effect on signal quality.Therefore transcoding might be used anyway. Additionally oralternatively it is possible to make a table of “allowed” transcodings,that are known to be of good quality. For example subjective speechquality tests, where the deterioration in user opinion (for example MOS,Mean Opinion Score) is not above some suitable threshold betweentranscoding/not transcoding, may be used for finding out transcodingsthat are of good quality. Objective speech quality measurements can bealso used for this. It should be noted that information about allowedtranscodings may be maintained by some other means than table as well,e.g. some type of rules may be defined for this purpose.

FIGS. 10A and 10B show two examples of decision tables illustrating someoptions of choosing, which rate transformation type to use in varioussituations. In the shown examples speech frames are transmitted from aB-side (for example UE_B of FIG. 5, 6 or 8) to an A-side (for exampleUE_A of FIG. 5, 6 or 8).

In FIG. 10A it is assumed that TrFO between the A-side and the B-side isinitially using AMR mode 7.95 kbit/s before the A-side requests ratecontrol. The requested rate is 7.4 kbit/s. The 7.4 kbit/s coded mode isso close to the 7.95 kbit/s mode that using the 7.95 kbit/s mode untilthe rate control is finished on the B-side and the B-side is sending inthe 7.4 kbit/s mode is not likely to cause significantly more bad framesthan using the coded domain conversion to 7.4 kbit/s mode. As the codeddomain conversion itself may cause some degradation on speech qualityand the fact that the modes are almost the same, the conversion will notbe started in this case. This is shown in cell 1011 of the table of FIG.10A.

Whereas, if the A-side is requesting AMR mode 4.75 kbit/s then the codeddomain conversion is started as continuing to use the 7.95 kbit/s modemay result in decreased link quality, which may cause many bad frames.Thus applying the 4.75 kbit/s mode as quickly as possible may reduce thenumber of bad frames and thus improve the speech quality. This is shownin cell 1012 of the table of FIG. 10A. The use of coded domainconversion in connection with other combinations of different codecmodes is handled similarly in the table of FIG. 10A.

In FIG. 10B, normal TrFO distributed rate control is applied, if A-siderequests a higher mode than it is currently using. This is illustratedin the lower left hand side of the table of FIG. 10B. If B-side is usingAMR mode 12.2 kbit/s or 10.2 kbit/s and A-side requests a lower mode,then transcoding is used. This is shown in rows 1001 and 1002 of thetable of FIG. 10B. Transcoding is also used, if B-side is using AMR mode7.95 kbit/s and A-side requests AMR mode 7.4 kbit/s. This is shown incell 1003 of the table of FIG. 10B. If B-side is using some other AMRmode and A-side requests a lower mode, then coded domain conversion isused. This is illustrated in the lower right hand side of the table ofFIG. 10B.

In general, the various embodiments of the invention may be implementedin hardware or special purpose circuits, software, logic or anycombination thereof. For example, some aspects may be implemented inhardware, while other aspects may be implemented in firmware or softwarewhich may be executed by a controller, microprocessor or other computingdevice, although the invention is not limited thereto. While variousaspects of the invention may be illustrated and described as blockdiagrams, flow charts, or using some other pictorial representation, itis well understood that these blocks, apparatus, systems, techniques ormethods described herein may be implemented in, as non-limitingexamples, hardware, software, firmware, special purpose circuits orlogic, general purpose hardware or controller or other computingdevices, or some combination thereof.

FIG. 11 shows a block diagram of an apparatus suited for carrying outvarious embodiments of the invention. The apparatus 1100 may be atypical computer, such as a general-purpose computer or a server, withpossibly distributed functions, that comprises a Central Processing Unit(CPU) 1101 for controlling the computer, a memory 1102 including acomputer program code or software 1103.

The software 1103 includes instructions for the CPU 1101 to control theapparatus 1100 such as an operating system and different computerapplications. The software 1103 may comprise instructions forcontrolling the apparatus to provide some functionality of theinvention. The instructions may for example control the apparatus tooperate as a MGW element according to some embodiments of the inventionor to provide a rate transformation functionality according to someembodiments of the invention. The apparatus 1100 further comprises anI/O (input/output) unit 1104 such as a LAN (Local Area Network),Ethernet or WLAN (Wireless LAN) unit. The apparatus 1100 could comprisealso a user interface (not shown), but the user interface may beimplemented also by means of a remote connection through the I/O unit orthe user-interface may be non-existent.

It should be appreciated that in this document, words comprise, includeand contain are each used as open-ended expressions with no intendedexclusivity. Further it should be appreciated that the order of thevarious shown or described messages or method steps may be varied andthat some steps or messages may be repeated a plurality of times or someof them may be left out from a certain implementation of the invention.

The foregoing description has provided by way of non-limiting examplesof particular implementations and embodiments of the invention a fulland informative description of the best method and apparatus presentlycontemplated by the inventors for carrying out the invention. It ishowever clear to a person skilled in the art that the invention is notrestricted to details of the embodiments presented above, but that itcan be implemented in other embodiments using equivalent means withoutdeviating from the characteristics of the invention.

Furthermore, some of the features of the above-disclosed embodiments ofthis invention could be used to advantage without the corresponding useof other features. As such, the foregoing description should beconsidered as merely illustrative of the principles of the presentinvention, and not in limitation thereof. Hence, the scope of theinvention is only restricted by the appended patent claims.

1. A method comprising: intercepting, at a network element of acommunication network, rate control information sent towards a secondend user device of the communication network indicating a need to changea first codec rate to a second codec rate of coded data in acommunication received from the second user device in a downlinkconnection from the communication network to a first end user device;receiving, at the network element, coded data from said second end userdevice destined to said first end user device, which said coded data iscoded with the first codec rate; starting, at said network element, inresponse to said intercepted rate control information, ratetransformation to transform said data received from said second end userdevice coded with said first codec rate into said second codec rate inthe downlink connection to said first end user device; receiving secondcoded data destined to said first end user device, which said secondcoded data is coded with said second codec rate; and stopping said ratetransformation in response to receiving said second coded data.
 2. Themethod according to claim 1, wherein said rate transformation isperformed with a coded domain conversion.
 3. The method according toclaim 2, wherein said coded domain conversion comprises at leastpartially decoding said data encoded with said first codec rate forobtaining at least partially decoded data, and using said at leastpartially decoded data for performing the coded domain conversion. 4.The method according to claim 1, wherein said rate transformation isperformed with a transcoder.
 5. The method according to claim 1, whereinsaid rate transformation comprises adding redundancy.
 6. The methodaccording to claim 1, wherein said rate control information comprises atleast one of the following: measurements, a command to change codec rateand a command to start rate transformation.
 7. The method according toclaim 1, wherein the method further comprises conditionally deciding,whether to start said rate transformation in a particular situation. 8.The method according to claim 7, wherein said deciding is conducted onthe basis of at least one of the following: characteristics of availablerate transformation mechanisms, subjective/objective speech qualityimprovement obtainable by said rate transformation, said first codecrate and said second codec rate.
 9. The method according to claim 1,wherein the method further comprises conditionally deciding, which ratetransformation mechanism to use in a particular situation.
 10. Themethod according to claim 9, wherein said deciding is conducted on thebasis of at least one of the following: characteristics of availablerate transformation mechanisms, subjective/objective speech qualityimprovement obtainable by different rate transformation mechanisms, saidfirst codec rate and said second codec rate.
 11. The method according toclaim 1, comprising receiving a stop command, and stopping said ratetransformation in response to said stop command.
 12. The methodaccording to claim 1, wherein the communication network is configured totransparently transfer coded data at least in some part of thecommunication network between said first end user device and said secondend user device and wherein said transparent transferring of coded datais effected by at least one of a tandem free operation and a transcoderfree operation mechanism and where said first codec rate has been agreedaccording to the at least one of the tandem free operation and thetranscoder free operation mechanisms.
 13. The method according to claim1 performed by a computer program stored in a computer readable mediumand executed by a processor.
 14. The method according to claim 1,wherein the rate control information sent towards the second end userdevice is at least for prompting a codec rate change by the second enduser device for the communication.
 15. The method according to claim 14,wherein said rate transformation is started before the codec rate changeby the second end user device for the communication.
 16. An apparatuscomprising: at least one processor; and at least one memory includingcomputer program code, where the at least one memory and the computerprogram code are configured, with the at least one processor, to causethe apparatus to at least: receive coded data from a second end userdevice destined to a first end user device, which said coded data iscoded with a first codec rate; intercept rate control information senttowards the second end user device of the communication networkindicating a need to change said first codec rate to a second codec rateof coded data in a communication received from the second user device ina downlink connection from the communication network to the first enduser device; start, at said apparatus, in response to said interceptedrate control information, rate transformation to transform said datareceived from said second end user device coded with said first codecrate into said second codec rate in the downlink connection to saidfirst end user device; receive second coded data from said second enduser device destined to said first end user device, which said secondcoded data is coded with said second codec rate, and stop said ratetransformation in response to receiving said second coded data.
 17. Theapparatus according to claim 16, wherein the at least one memory and thecomputer code is configured with the at least one processor to cause theapparatus to perform said rate transformation by a coded domainconversion.
 18. The apparatus according to claim 17, wherein theapparatus at least one memory and the computer code is configured withthe at least one processor to cause the apparatus to perform said codeddomain conversion by at least partially decoding said data encoded withsaid first codec rate for obtaining at least partially decoded data, andusing said at least partially decoded data for performing the codeddomain conversion.
 19. The apparatus according to claim 16, wherein theat least one memory and the computer code is configured with the atleast one processor to cause the apparatus to perform said ratetransformation by transcoding.
 20. The apparatus according to claim 16,wherein the apparatus is caused to add redundancy in connection withsaid rate transformation.
 21. The apparatus according to claim 16,wherein said rate control information comprises at least one of thefollowing: measurements, a command to change codec rate and a command tostart rate transformation.
 22. The apparatus according to claim 16,wherein the at least one memory and the computer code is configured withthe at least one processor to cause the apparatus to conditionallydecide, whether to start said rate transformation in a particularsituation.
 23. The apparatus according to claim 22, wherein the at leastone memory and the computer code is configured with the at least oneprocessor to cause the apparatus to perform said deciding on the basisof at least one of the following: characteristics of available ratetransformation mechanisms, subjective/objective speech qualityimprovement obtainable by said rate transformation, said first codecrate and said second codec rate.
 24. The apparatus according to claim16, wherein the at least one memory and the computer code is configuredwith the at least one processor to cause the apparatus to conditionallydecide, which rate transformation mechanism to use in a particularsituation.
 25. The apparatus according to claim 24, wherein the at leastone memory and the computer code is configured with the at least oneprocessor to cause the apparatus to perform said deciding on the basisof at least one of the following: characteristics of available ratetransformation mechanisms, subjective/objective speech qualityimprovement obtainable by different rate transformation mechanisms, saidfirst codec rate and said second codec rate.
 26. The apparatus accordingto claim 16, wherein the at least one memory and the computer code isconfigured with the at least one processor to cause the apparatus to:receive a stop command, and stop said rate transformation in response toreceiving said stop command.
 27. The apparatus according to claim 16,wherein said apparatus is a media gateway element, a radio networkcontroller, a base transceiver station, a base station controller, atranscoder, a network controller, a wireless local area network accesspoint, a voice over internet protocol gateway, or a digital subscriberline access multiplexer.
 28. The apparatus according to claim 16,wherein the rate control information sent towards the second end userdevice is at least for prompting a codec rate change by the second enduser device for the communication.
 29. The apparatus according to claim28, wherein said rate transformation is started before the codec ratechange by the second end user device for the communication.
 30. Theapparatus according to claim 16, wherein the at least one memory and thecomputer code is configured with the at least one processor to cause theapparatus to transparently transfer coded data at least in some part ofthe communication network between said first end user device and saidsecond end user device and wherein said transparent transferring ofcoded data is effected by at least one of a tandem free operation and atranscoder free operation mechanism and where said first codec rate hasbeen agreed according to the at least one of the tandem free operationand the transcoder free operation mechanisms.
 31. An apparatuscomprising: means for intercepting, at a network element of acommunication network, rate control information sent towards a secondend user device of the communication network indicating a need to changea first codec rate to a second codec rate of coded data in acommunication received from the second end user device in a downlinkconnection from the communication network to a first end user device,where the communication network is configured to transparently transfercoded data at least in some part of the communication network betweensaid first end user device and said second end user device; means forreceiving, at the network element, coded data from said second end userdevice destined to said first end user device, which data is coded withthe first codec rate, means for starting, in response to saidintercepted rate control information, rate transformation to transformsaid data received from said second end user device coded with saidfirst codec rate into said second codec rate in the downlink connectionto said first end user device, means for receiving second coded datadestined to said first end user device, which said second coded data iscoded with said second codec rate; and means for stopping said ratetransformation in response to receiving said second coded data.
 32. Theapparatus according to claim 31, wherein the means for receivingcomprises an interface to said communication network and wherein themeans for starting and stopping comprises a memory including computerprogram code, the computer program code executable by at least oneprocessor.
 33. A network element comprising: a receiver configured toreceive coded data from a second end user device destined to a first enduser device, which data is coded with a first codec rate; a processingunit configured to intercept rate control information sent towards thesecond end user device of a communication network indicating a need tochange said first codec rate to a second codec rate of coded data in acommunication received from the second user device in a downlinkconnection from the communication network to the first end user device,and to start in response to said intercepted rate control information,rate transformation to transform said coded data received from saidsecond end user device coded with said first codec rate into said secondcodec rate in the downlink connection to said first end user device; thereceiver further configured to receive second coded data from saidsecond end user device destined to said first end user device, whichsaid second coded data is coded with said second codec rate; and theprocessing unit further configured to stop said rate transformation inresponse to receiving said second coded data.